package psd.model.Prolog;

import org.eclipse.jdt.core.dom.BooleanLiteral;
import org.eclipse.jdt.core.dom.CharacterLiteral;
import org.eclipse.jdt.core.dom.ITypeBinding;
import org.eclipse.jdt.core.dom.NullLiteral;
import org.eclipse.jdt.core.dom.NumberLiteral;
import org.eclipse.jdt.core.dom.StringLiteral;
import org.eclipse.jdt.core.dom.Type;
import org.eclipse.jdt.core.dom.TypeLiteral;


public interface ITypeResolver
{

    public abstract String getTypeTerm(ITypeBinding itypebinding);

    public abstract String getTypeTerm(Type type);

    public abstract String getTypeTerm(Type type, int i);

    public abstract String getTypeTerm(StringLiteral stringliteral);

    public abstract String getTypeTerm(CharacterLiteral characterliteral);

    public abstract String getTypeTerm(NullLiteral nullliteral);

    public abstract String getTypeTerm(BooleanLiteral booleanliteral);

    public abstract String getTypeTerm(NumberLiteral numberliteral);

    public abstract String getTypeTerm(TypeLiteral typeliteral);

    /**
     * @deprecated Method isTypeTerm is deprecated
     */

    public abstract boolean isTypeTerm(String s);
}
